﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NakedObjects.Services;
using NakedObjects;
using RTC.Modelo.Entidades;

namespace InicializadorModelo
{
    public class Inicializador
    {
        private IDomainObjectContainer Container;

        #region Metodo inicial

        public static void Inicializar(
            IDomainObjectContainer Container
            ){
                new Inicializador(Container).Ini();
        }

        #endregion

        private Inicializador(IDomainObjectContainer c)
        {
            Container = c;
        }

        private void Ini() {            
            InicializarTipoDocumento(); 
        }

        private void InicializarTipoDocumento() {
            if (Container.Instances<TipoDocumento>().Count() > 0) {
                return;
            }

           TipoDocumento newTipo = Container.NewTransientInstance<RTC.Modelo.Entidades.TipoDocumento>();
           newTipo.Nombre = "DNI";
           Container.Persist<TipoDocumento>(ref newTipo);
           newTipo = Container.NewTransientInstance<RTC.Modelo.Entidades.TipoDocumento>();
           newTipo.Nombre = "Pasaporte";
           Container.Persist<TipoDocumento>(ref newTipo);
        }
    }
}
